1. Field of the Invention
The present invention relates to a method and system for transforming a two-dimensional original picture image into a three-dimensional picture image on a curved surface, and more particularly to the same suited for application to a special-effect apparatus for providing a television signal with special effects.
2. Description of the Prior Art
An apparatus for image transformation by means of data conversion of a planar original picture on quadrilateral paper with a character written therein as indicated in FIG. 1A into a three-dimensional picture image having a stereoscopic curved surface as indicated in FIG. 1B in which the paper appears to be rolled on a cylinder is known (refer to Japanese Patent Laid-open No. 58-219664/1983).
FIG. 2 indicates one example of such image transformation apparatus, wherein 1 denotes a host computer formed of a microcomputer and others, 2 denotes a bulk memory, and 3 denotes an input/output unit.
In the bulk memory 2, there are stored transformation programs and other programs prepared in advance such as the one described above for transforming a planar picture image into a three-dimensional picture image in which the planar picture image appears to be rolled on a cylinder. If a selection is made to read the mentioned program by the input/output unit 3, the host computer 1 reads out the same from the bulk memory 2, executes the program, provides necessary data for image transformation as described below, and stores the same in a buffer memory 4.
The process of the image transformation is executed such that the picture image is divided into a plurality of blocks and undergoes the image transformation process block by block. In the present example, the original image IM.sub.1 is divided into 64.times.96 blocks, each block being formed of 8.times.8 picture elements. The transformed image IM.sub.2, on the other hand, is constituted of 128.times.128 blocks, each block being formed of 4.times.6 picture elements. The transformed positions in three dimensional directions, namely, X, Y, and Z directions (Z direction represents the depth) are calculated according to the above mentioned program for a representative point of each of the blocks of the original image IM.sub.1 and the calculated results are stored in the buffer memory 4. Since, in the present case, the numbers of blocks before and after the transformation are different, the blocks after the transformation do not wholly correspond to the blocks of the input picture image. However, the picture image after the transformation can be determined by the prescription, as indicated in FIG. 1, to what position in the transformed image IM.sub.2 (to the position B.sub.2 in the case of FIG. 1) the representative point of the block B.sub.1 in the original image IM.sub.1 should be transformed.
The way in which the data of the picture image after the transformation are obtained is as described in the following.
FIG. 3 is an explanatory drawing of the image transformation process. The picture after the transformation of a central block surrounded by representative points a, b, c, and d of four blocks in the original picture image as indicated in FIG. 3A is given by representative points in the circumference of a representative point P as indicated in FIG. 3B. That is, the positions of the points a, b, c, and d after the transformation are first calculated to be the points A, B, C, and D as indicated in FIG. 3B. The position after the transformation of the point p is likewise determined to be the point P.
These points A, B, C, D, and P have three dimensional coordinates, whereby the type of curved surface is to be formed is determined. In the present case, the curved surface after the transformation is given by linear approximation in the vicinity of the representative point as described in the following.
That is, in the linear approximation of the surface including the point P, the orientation of this surface can be defined as a surface in parallel with the segment vector AC connecting the point A to the point C and the segment vector DB connecting the point D to the point B. Namely, the linearly approximated plane including the point P is defined by a unit vector PX in parallel with the vector AC and a unit vector PY in parallel with the vector DB. Thus, the entire transformed curved surface is adapted to be obtained by such linear approximation of a surface in the vicinity of each representative point. The values of the vectors PX and PY are obtained from the following: EQU PX=AC/4,PY=DB/4.
The buffer memory 4 is written in with data necessary for transformations such as those for applying the transformation to the representative point of each of the blocks in the original image IM.sub.1 and calculating the position thereof after the transformation as described above, the difference values, and so on.
These data from the buffer memory 4 are supplied to an image transformation circuit 5, and thus, input image data from a terminal 6 is transformed in accordance with the data from the buffer memory 4 and delivered to an output terminal 7.
In the present case, the image transformation circuit 5, using the data from the buffer memory 4, first designates the area to be transformed. That is, it first defines to what area B.sub.2 on the transformed image IM.sub.2 an area B.sub.1 on the original image IM.sub.1 in FIG. 1A should be transformed. According to the defined area, transformation from the area B.sub.1 of the original image data to the area B.sub.2 of the transformed image is executed. Namely, read addresses for reading out the original image data from an input buffer memory provided in the image transformation circuit 5 corresponding to all the picture elements within the area B.sub.2 to be processed are calculated, data are read out from the input buffer memory according to the above read addresses, and the read out data of the picture elements are written in an output buffer memory. These addresses in the output buffer memory in which the image data are written in are the very addresses of the positions after the transformation.
At this time, interpolation for a sample not located in the sampling position of the picture image is performed at the same time, and the interpolated data are also written in the output buffer memory.
To explain what has been described above in brief, the points on the original picture image IM.sub.1 corresponding to the 24 (4.times.6) picture elements of one block of the transformed picture image are first obtained in the image transformation circuit 5, according to which data are read out from the input buffer memory, and the read out sample data, or interpolated data obtained from a plurality of sample data, are written in the address positions after the transformation in the output buffer memory.
In the above case, since the point or read address on the original picture image corresponding to one a representative point of the 24 picture elements is obtained, the points on the original picture image corresponding to the other picture elements can be obtained by obtaining differences between the picture elements using differences from adjacent blocks and by successively adding these differences to the representative point. In other words, in this process, reverse transformation is applied to the transformed data of the picture image IM.sub.2 after the transformation so that the points of the picture elements on the original picture image IM.sub.1 corresponding to the picture elements on the picture image IM.sub.2 are found. If the same do not agree with the sampling point, the data corresponding to the point are obtained by interpolation based on the input picture image data of the circumferential sampling point.
In the described manner, transformation from a two-dimensional, planar picture image to a three-dimensional, solid picture image can be executed.
The above described image transformation apparatus is applied to a special effect apparatus for broadcasting, for example, for producing a special effect of the action of turning a page of a book.
Also, when applied to the output unit of a computer, it can express its output data on a three-dimensional curved surface and help the user in his intuitive understanding.
What is important in such apparatus, however, is how to produce a stereoscopic effect. When the contents of the picture image in the original picture is an irregular one, such as a description of nature, or has no movement therein, such as a still picture, the stereoscopic effect is frequently lost.
The reason why is because what is exhibited is merely a transformed image onto a three-dimensional surface of a two-dimensional picture as it is. In reality, however, shading constitutes an important factor in producing the stereoscopic effect.
There is also another problem in that the accuracy in the calculation cannot be made sufficiently high because the hardware structure to execute the calculation for all the blocks cannot be made sufficiently complex and larger. As a result, it becomes unavoidable that gaps are produced between adjoining parallelograms which are formed by the linear approximate transformation.
To solve this problem, it is first thought that, to provide a special purpose hardware structure having such a high calculating accuracy, produces no such gap. This solution has a difficulty in that the hardware structure will become too huge. In performing transformation of various images, it is not easy to establish suitable bit lengths according to the relative difficulty of the transformation, and it becomes much more difficult when a two-dimensional picture has to be mapped onto an especially complicated three-dimensional curved surface. Such difficulties may be overcome step by step, but it is a problem that a great improvement may not be attained.
As a second solution to the problem of production of the gaps, there is considered a method to pass the output result from the transforming calculation through a low pass filter so that the gaps may become less conspicuous. In this method, however, the frequency band of the output image signal is limited and, from the principle of this method, the transformed image output that is obtained with great effort with a predetermined calculating accuracy becomes blurred, and so, this method has a defect, in essence, in that it causes a deterioration in the quality of the image.